export default methods =>{
    return target =>{
        Object.assign(target.prototype,methods)
    }
}

/*
* 字符串填充函数
* @param {String} value 目标字符串
* @param {Array} position 需要填充的位置
* @param {String} padstr 填充字符串
* @param {String} return 返回目标字符串
*/

export const padStr =(value,position,padstr,inputElement) =>{
    position.forEach((item,index) =>{
        if(value.length > item + index){
            value = value.substring(0,item+index) + padstr + value.substring(item + index);
        }
    })
    value = value.trim();
    // 解决部分浏览器插入空格后光标错位问题
    requestAnimationFrame(() =>{
        inputElement.setSelectionRange(value.length,value.length);
    })
    return value
}